package com.prs.crm.service.sys;

import java.util.Collection;

import org.courser.ui.PaginationSupport;

import com.prs.crm.domain.sys.Form;
import com.prs.crm.domain.sys.FormField;
import com.prs.crm.service.BaseService;

/**
 * 表单Service
 * @author prs.chenzhi
 *
 */
public interface FormService extends BaseService<Form> {
	
	
	/**
	 * 分页显示表单属性
	 * @form form 表单
	 * @param page
	 * @param recorder
	 * @return
	 */
	 PaginationSupport listFormFields(Form form,PaginationSupport page);
	/**
	 * 获取所有表单
	 */
	Collection<Form> getAllForm();
	 	
	 /**
	  * 查询表单
	  * @param className 表单关联class
	  * @return
	  */
	 Form getForm(String className);
	 	
	 
	 /**
	  * 添加form属性
	  * @param form
	  * @param field
	  * @param gridshow 是否显示在表格
	  * @param queryfield 是否是查询关键字
	  */
	 void saveField(Form form,FormField field,boolean gridshow,boolean queryfield);
	 
	 
	 /**
	  * 移除formfield
	  * @param form
	  * @param field
	  */
	 void removeFiled(Form form,FormField field);
	 Form findByEname(String ename);
	 
}
